home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 10 / The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso / PC_SIGCD / 07 / 8 / DISK0786.ZIP / TOOLS1.ARC / PASSWORD.BAS < prev    next >
BASIC Source File  |  1987-03-09  |  2KB  |  65 lines

  1. 1000 '=========================================================
  2. 1010 'PASSWORD.BAS (From "Softalk", March, May & July, 1984)
  3. 1020 'minor mods and color added by P. Eskildsen, July 10, 1984
  4. 1030 'other mods and color removed by Dan Gookin, March 5th, 1987
  5. 1040 'Uses BASICA 2.0 key trapping to kill Ctrl-Alt-Del,
  6. 1050 'Ctrl-C, & Ctrl-Break -- user cannot RESET
  7. 1060 '
  8. 1070 KEY OFF
  9. 1080 KEY 15,CHR$(12) + CHR$(83)                'CTRL-ALT-DEL
  10. 1090 KEY 16,CHR$(4) + CHR$(46)                 'CTRL-C
  11. 1100 KEY 17,CHR$(4) + CHR$(70)                 'CTRL-BREAK
  12. 1110 ON KEY(15) GOSUB 1520 : KEY(15) ON
  13. 1120 ON KEY(16) GOSUB 1520 : KEY(16) ON
  14. 1130 ON KEY(17) GOSUB 1520 : KEY(17) ON
  15. 1140 '
  16. 1150 'Read in password
  17. 1160 '
  18. 1170 OPEN "password.dat" FOR INPUT AS 1
  19. 1180 LINE INPUT#1,PASSWORD$
  20. 1190 CLOSE
  21. 1200 ON ERROR GOTO 1620
  22. 1210 '
  23. 1220 'Check user's password entry one char at a time, as entered:
  24. 1230 '
  25. 1240 CLS
  26. 1250 LOCATE ,,1
  27. 1260 PRINT "Please enter your password:";
  28. 1270 TRY = 0
  29. 1280 I = 0
  30. 1290 A$ = INKEY$: IF A$="" THEN 1290
  31. 1300    IF A$ = "~" THEN 1420
  32. 1310    I = I + 1
  33. 1320    IF A$ <> MID$(PASSWORD$,I,1) THEN 1350
  34. 1330    IF I = LEN(PASSWORD$) THEN 1420
  35. 1340 GOTO 1290
  36. 1350    TRY = TRY + 1
  37. 1360    IF TRY >= 3 THEN 1480
  38. 1370    PRINT "Wrong! Try again from start of password."
  39. 1380 GOTO 1280
  40. 1390 '
  41. 1400 'Access granted
  42. 1410 '
  43. 1420 PRINT
  44. 1430 PRINT TAB(30);"Welcome!"
  45. 1440 SYSTEM
  46. 1450 '
  47. 1460 'Too many attempts, lock system
  48. 1470 '
  49. 1480 CLS
  50. 1490 LOCATE 12,20
  51. 1500 PRINT "** System Locked **"
  52. 1510 GOTO 1510
  53. 1520 '
  54. 1530 'Display ignore messages
  55. 1540 '
  56. 1550 BEEP
  57. 1560 READ AH$
  58. 1570 PRINT AH$
  59. 1580 RETURN
  60. 1590 DATA "So there!", "Think you're smart?"
  61. 1600 DATA "That won't work either.", "I'm sorry"
  62. 1610 DATA "Try harder...", "Okay.  Give up now."
  63. 1620 RESTORE 1590
  64. 1630 RESUME 1560
  65.